import { GetServerSideProps } from "next";
import "../../app/globals.css";
import TitleBar from "../../components/TitleBar/TitleBar";
import { ChannelCard } from "@/components/channel-card";
import DataChart from "@/components/DataChart/DataChart";
import Footer from "@/components/Footer/Footer";
interface ChannelDataProp {
channel_name: string;
profile_pic: string;
subscribers: number;
sub_org: string;
video_count: number;
next_milestone: string;
days_until_next_milestone: string;
next_milestone_date: string;
}
interface GraphDataProp{
labels: string[];
datasets: number[];
}
export const getServerSideProps: GetServerSideProps = async (context) => {
const { slug } = context.params || {};
const chartData = await getGraphData(slug as string);
const channelData = await getChannelData(slug as string);
const sevenDayGraphData = await get7DGraphData(slug as string);
return {
props: {
chartData,
channelData,
slug,
sevenDayGraphData
},
};
};
function Page({ chartData, channelData, sevenDayGraphData, slug }: { chartData: GraphDataProp, channelData: ChannelDataProp, sevenDayGraphData: GraphDataProp, slug: string }) {
return (
<>